package server

var HTTPStatus = struct {
	Continue                      int
	OK                            int
	Created                       int
	LowOnStorageSpace             int
	MultipleChoices               int
	MovedPermanently              int
	MovedTemporarily              int
	SeeOther                      int
	NotModified                   int
	UseProxy                      int
	BadRequest                    int
	Unauthorized                  int
	PaymentRequired               int
	Forbidden                     int
	NotFound                      int
	MethodNotAllowed              int
	NotAcceptable                 int
	ProxyAuthenticationRequired   int
	RequestTimeout                int
	Gone                          int
	LengthRequired                int
	PreconditionFailed            int
	RequestEntityTooLarge         int
	RequestURITooLong             int
	UnsupportedMediaType          int
	Invalidparameter              int
	IllegalConferenceIdentifier   int
	NotEnoughBandwidth            int
	SessionNotFound               int
	MethodNotValidInThisState     int
	HeaderFieldNotValid           int
	InvalidRange                  int
	ParameterIsReadOnly           int
	AggregateOperationNotAllowed  int
	OnlyAggregateOperationAllowed int
	UnsupportedTransport          int
	DestinationUnreachable        int
	InternalServerError           int
	NotImplemented                int
	BadGateway                    int
	ServiceUnavailable            int
	GatewayTimeout                int
	RTSPVersionNotSupported       int
	OptionNotsupport              int
}{100, 200, 201, 250, 300, 301, 302,
	303, 304, 305, 400, 401, 402, 403, 404, 405,
	406, 407, 408, 410, 411, 412, 413,
	414, 415, 451, 452, 453,
	454, 455, 456, 457, 458, 459,
	460, 461, 462, 500, 501, 502,
	503, 504, 505, 551}

var statusTexts = map[int]string{
	HTTPStatus.Continue:                      "Continue",
	HTTPStatus.OK:                            "OK",
	HTTPStatus.Created:                       "Created",
	HTTPStatus.LowOnStorageSpace:             "Low on Storage Space",
	HTTPStatus.MultipleChoices:               "Multiple Choices",
	HTTPStatus.MovedPermanently:              "Moved Permanently",
	HTTPStatus.MovedTemporarily:              "Moved Temporarily",
	HTTPStatus.SeeOther:                      "See Other",
	HTTPStatus.NotModified:                   "Not Modified",
	HTTPStatus.UseProxy:                      "Use Proxy",
	HTTPStatus.BadRequest:                    "Bad Request",
	HTTPStatus.Unauthorized:                  "Unauthorized",
	HTTPStatus.PaymentRequired:               "Payment Required",
	HTTPStatus.Forbidden:                     "Forbidden",
	HTTPStatus.NotFound:                      "Not Found",
	HTTPStatus.MethodNotAllowed:              "Method Not Allowed",
	HTTPStatus.NotAcceptable:                 "Not Acceptable",
	HTTPStatus.ProxyAuthenticationRequired:   "Proxy Authentication Required",
	HTTPStatus.RequestTimeout:                "Request Time-out",
	HTTPStatus.Gone:                          "Gone",
	HTTPStatus.LengthRequired:                "Length Required",
	HTTPStatus.PreconditionFailed:            "Precondition Failed",
	HTTPStatus.RequestEntityTooLarge:         "Request Entity Too Large",
	HTTPStatus.RequestURITooLong:             "Request-URI Too Large",
	HTTPStatus.UnsupportedMediaType:          "Unsupported Media Type",
	HTTPStatus.Invalidparameter:              "Parameter Not Understood",
	HTTPStatus.IllegalConferenceIdentifier:   "Conference Not Found",
	HTTPStatus.NotEnoughBandwidth:            "Not Enough Bandwidth",
	HTTPStatus.SessionNotFound:               "Session Not Found",
	HTTPStatus.MethodNotValidInThisState:     "Method Not Valid in This State",
	HTTPStatus.HeaderFieldNotValid:           "Header Field Not Valid for Resource",
	HTTPStatus.InvalidRange:                  "Invalid Range",
	HTTPStatus.ParameterIsReadOnly:           "Parameter Is Read-Only",
	HTTPStatus.AggregateOperationNotAllowed:  "Aggregate operation not allowed",
	HTTPStatus.OnlyAggregateOperationAllowed: "Only aggregate operation allowed",
	HTTPStatus.UnsupportedTransport:          "Unsupported transport",
	HTTPStatus.DestinationUnreachable:        "Destination unreachable",
	HTTPStatus.InternalServerError:           "Internal Server Error",
	HTTPStatus.NotImplemented:                "Not Implemented",
	HTTPStatus.BadGateway:                    "Bad Gateway",
	HTTPStatus.ServiceUnavailable:            "Service Unavailable",
	HTTPStatus.GatewayTimeout:                "Gateway Time-out",
	HTTPStatus.RTSPVersionNotSupported:       "RTSP Version not supported",
	HTTPStatus.OptionNotsupport:              "Option not supported",
}

func GetStatusText(code int) string {
	return statusTexts[code]
}
